﻿using System;
using System.Collections.Generic;
using eCommMongo.Core;
using eCommMongo.Core.Domain.Posts;

namespace eCommMongo.Service.Posts
{
    public interface IPostService
    {
        string Update(string text, string customerId, IList<string> pictureIds, bool isProudct, string productId, IList<string> tagNames );

        IList<Post> UserTimeLine(string customerId, int pageIndex, int pageSize);
        IList<Post> HomeTimeLine(string customerId,int pageIndex,int pageSize, long?  lastPostDate);
        IList<Post> HomeTimeLineProduct(string customerId,int pageIndex,int pageSize);


        Post GetPostById(string postId);
        IPagedList<Post> FindPostsByTagId(string tagName, int pageIndex, int pageSize);

        void GivePointToPost(string postId, string customerId, int point = 1);
        int? GetPointOfStatus(string postId);



        string AddComment(string postId, string commenterId, string comment);
        IList<Comment> GetPagedComments(string postId, int pageIndex, int pageSize);
        Comment GetComment(string postId, string commentId);
    }
}